This invention relates generally to booting processor-based systems.
For a typical computer system, the xe2x80x9cbootxe2x80x9d process is executed by a program usually located in read-only memory (ROM) of the computer system. The ROM program may be described as including two separate processes: the power-on self test or POST, and the basic input/output system, or BIOS. The POST part of the program executes commands such that different circuitry and components of the computer system may be initialized. The BIOS portion includes functions which may be used by software, including POST, for communicating with different devices in the computer system.
Upon receiving power to the computer system, the POST program in the ROM immediately begins execution. The POST performs initialization functions, such as detecting and testing the memory, the display, the non-volatile media, such as hard disk and floppy disk drives, and so on. In some systems, an abbreviated POST or xe2x80x9cquick-bootxe2x80x9d, may be available.
Once the POST routine completes initialization and testing of the system, control is typically transferred to an operating system, usually located on the hard disk drive. Once the operating system gains control of the system, all run time operations of the system, including any execution of application programs, are controlled by the operating system. The operating system may or may not utilize the BIOS functions in communicating with the hardware of the computer system.
The computer industry is looking for ways to make the boot process faster. One reason for shortening the boot process is that many users of computer systems expect appliance-like functionality. They are impatient with long boot times and other procedures that are not commonly associated with the operation of appliances.
Thus, there is a continuing need for ways to reduce the time of the boot process.